package com.canaan.common.encrypt;

import cn.hutool.json.JSONUtil;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.util.UUID;

/**
 * 推送参数
 *
 * @author du.tang
 * @Version 1.0.0
 */
@Setter
@Getter
public class PushReqParam<T> implements Serializable {

    /**
     * 请求编号
     */
    private String requestNo;
    /**
     * 请求时间戳
     */
    private String timeStamp;
    /**
     * 推送数据类型
     */
    private String dataType;
    /**
     * 发送数据
     */
    private T data;

    {
        this.timeStamp = String.valueOf(System.currentTimeMillis());
        this.requestNo = UUID.randomUUID().toString().replace("-", "");
    }

    @Override
    public String toString() {
        return JSONUtil.toJsonStr(this);
    }
}
